package com.ruoyi.system.service;

import java.util.List;
import com.ruoyi.system.domain.MaintenancePlan;

/**
 * 维护计划Service接口
 * 
 * @author ruoyi
 * @date 2025-01-14
 */
public interface IMaintenancePlanService 
{
    /**
     * 查询维护计划
     * 
     * @param deviceId 维护计划主键
     * @return 维护计划
     */
    public MaintenancePlan selectMaintenancePlanByDeviceId(Long deviceId);

    /**
     * 查询维护计划列表
     * 
     * @param maintenancePlan 维护计划
     * @return 维护计划集合
     */
    public List<MaintenancePlan> selectMaintenancePlanList(MaintenancePlan maintenancePlan);

    /**
     * 新增维护计划
     * 
     * @param maintenancePlan 维护计划
     * @return 结果
     */
    public int insertMaintenancePlan(MaintenancePlan maintenancePlan);

    /**
     * 修改维护计划
     * 
     * @param maintenancePlan 维护计划
     * @return 结果
     */
    public int updateMaintenancePlan(MaintenancePlan maintenancePlan);

    /**
     * 批量删除维护计划
     * 
     * @param deviceIds 需要删除的维护计划主键集合
     * @return 结果
     */
    public int deleteMaintenancePlanByDeviceIds(Long[] deviceIds);

    /**
     * 删除维护计划信息
     * 
     * @param deviceId 维护计划主键
     * @return 结果
     */
    public int deleteMaintenancePlanByDeviceId(Long deviceId);

    /**
     * 根据区域ID查询维护计划列表
     * @param areaId 区域ID
     * @return 维护计划列表
     */
    List<MaintenancePlan> selectMaintenancePlanByAreaId(Long areaId);

    /**
     * 根据区域ID查询维护计划列表
     * @param mineId 区域ID
     * @return 维护计划列表
     */
    List<MaintenancePlan> selectMaintenancePlanByMineId(Long mineId);

}
